Facial animation method

ABSTRACT

A 3D imaged head consisting of a set of meshes is animated by modelled facial muscles. For natural animation of the lips in speech, the lower and upper lips are distinguished in a set of lip mesh based on the nodes of the mesh on a boundary of the lip corner and mouth opening, and lower and upper zones of the head are divided by the boundary. Modelled muscles attached to the upper lip, with intersecting zones of influence in the upper zone, and attached to the lower lip, with intersecting zones of influence in the lower zone, displace nodes of mesh respectively in the upper lip and under the nose and in the lower lip and the chin. Other muscles have zones of influence in the lower and upper zones.

[0001] The present invention relates to a method of animating faces inthree dimensions used in a data processing means including an engine foranimating the head of a speaker previously stored and analyzed. Forexample, the data processing means relates to teleconferencing,teleworking or collaborative work, or intelligent agents for reading outpages of electronic mail, or virtual assistants with applications toe-commerce.

[0002] In the prior art, most animation engines are not muscular and theface is often animated by morphing between key expressions of the headproduced manually by artists. Muscular animation engines are generallymore comprehensive but do not take into account the elasticity of theskin, which rules out real time animation of the head.

[0003] A muscular animation engine is of interest because of the easewith which it can describe an animation as a set of muscularcontractions, the head being structured in terms of predetermined setsof meshes, for example the lips, the eyes, the eyelids, etc. These setsof contractions can often be generalized from face to face. For example,a smile is always obtained by contraction of the zygomaticus musclesacting on the corners of the lips.

[0004] For example the following papers by Keith WATER: “A Muscle Modelfor Animating Three-Dimensional Facial Expression”, Computer Graphics,vol. 21, no. Jul. 4, 1987, pages 17-24, and “Analysis and Synthesis ofFacial Image Sequences Using Physical and Anatomical Models”, IEEETransactions on Pattern Analysis and Machine Intelligence, No. 6, pages569 to 579, June 15, 1993, suggest animating the face by means of musclemobilization in the form of a vector within an angular influence sectorwithin which a mesh node is moved as a function of an angularattenuation factor and a radial attenuation factor.

[0005] However, in the above type of animation engine, the lips aredissociated and the mouth is opened by rotation of the lower jawfastened to the lower lip. This rotation destroys the corners of thelips, which does not reflect accurately the independent movement of thelips when speaking.

[0006] The present invention aims to improve animation of the lips,without making it overcomplex, and so that it reproduces more faithfullythe corresponding real movement of the lips and is executed in realtime.

[0007] Accordingly, a method of animating a head imaged in threedimensions and acquired in a data processing means in the form of setsof meshes including a set of lips, by means of modelled facial muscles,is characterized in that it includes the steps of:

[0008] distinguishing lower and upper lips in the set of lips as afunction of mesh nodes at the level of a lip corner and a mouth openingboundary,

[0009] determining upper and lower zones of the head substantiallyshared by at least the boundary, and

[0010] constituting a first group of modelled muscles extending towardthe upper lip and having zones of influence intersecting at least two bytwo situated in the upper zone for displacing mesh nodes in the upperlip and under the nose of the head, a second group of modelled musclesextending toward the lower lip and having zones of influenceintersecting at least two by two situated in the lower zone fordisplacing mesh nodes in the lower lip and in the chin of the head, anda last group of modelled muscles having zones of influence fordisplacing each of the mesh nodes in the upper and lower zones in orderto stretch and contract the lips.

[0011] Thanks to the distribution of muscles modelled in the first,second and third groups independent with respect to each other and tothe influence of at least two muscles on certain mesh nodes, thespeaking mouth opens in a more natural manner.

[0012] As will become clear later, the invention also providesparametric animation through determining parameters for animating atleast one of the following organs: an eye, an eyelid, a lower jaw, aneck.

[0013] The invention also relates to client-server systems relating toanimation of the face. According to a first embodiment, the clientincludes a data processing means having acquired a head imaged in threedimensions in the form of sets of meshes and parameters by the methodaccording to the invention, for animating the head as a function ofanimation commands. The server is a processing server for convertingresponses read in a database addressed by requests corresponding tomessages transmitted by the client into messages and animation commandstransmitted to the client.

[0014] According to a second embodiment of the client-server system, theserver is a database server and the client includes a data processingmeans and a conversational means. The processing means has acquired ahead imaged in three dimensions in the form of sets of meshes andparameters by the method according to the invention, for animating thehead as a function of animation commands. The conversational meansconverts responses read in the database server addressed by requestscorresponding to messages provided in the client into messages appliedin the client and animation commands transmitted to the data processingmeans.

[0015] The sets of meshes and the parameters are preferably selected andacquired from a predetermined server.

[0016] Other features and advantages of the present invention willbecome more clearly apparent on reading the following description of aplurality of preferred embodiments of the invention, with reference tothe corresponding accompanying drawings, in which:

[0017]FIG. 1 is a meshed front view of a head;

[0018]FIG. 2 is a meshed side view of the head;

[0019]FIG. 3 is an algorithm of the facial animation method inaccordance with a preferred embodiment of the invention;

[0020]FIG. 4 is a meshed front view of the lips of the head;

[0021]FIG. 5 is an algorithm for distinguishing between the upper andlower lips;

[0022]FIG. 6 is a front view analogous to FIG. 1, without the hair,showing the location of facial muscles;

[0023]FIG. 7 is a table indicating the functions of the facial musclesshown in FIG. 6 and controlling the movement of the lips, as well aszones of influence of these muscles relative to the upper and lowerzones;

[0024]FIG. 8 is an algorithm included in the FIG. 3 algorithm fordetermining upper and lower zones of the head;

[0025]FIG. 9 is a view analogous to FIG. 1, without the hair, showingthe separation between the upper and lower zones at the level of thelips;

[0026]FIG. 10 is a graph of the zone of influence of a muscle and isused to explain the displacement of mesh nodes when the musclecontracts;

[0027]FIGS. 11A and 11B are graphs of a meshed zone of influence whenthe corresponding muscle is contracted 20% and 60%, respectively;

[0028]FIG. 12 is a table indicating the functions of the frontal musclesshown in FIG. 6 and zones of influence of these muscles relative to theupper and lower zones;

[0029]FIGS. 13A and 13B show the influence of three muscles,respectively after a 20% contraction and a 60% contraction, on thedisplacements of mesh nodes common to their zones of influence, in orderto demonstrate the impossibility of displacing mesh nodes that theinvention avoids;

[0030]FIG. 14 is a table of the distribution of facial muscles intogroups in view of their additive or independent contribution to meshnode displacements;

[0031]FIGS. 15 and 16 are graphs in axial section of a variantellipsoid-based zone of influence of a muscle, respectively in a planecontaining the vector modelling the muscle and in a plane perpendicularto that vector;

[0032]FIG. 17 is an algorithm for determining parameters for animatingeyes, eyelids, a lower jaw and a neck of the head; and

[0033]FIGS. 18 and 19 are block diagrams of two embodiments. of aclient-server system for facial animation in accordance with theinvention.

[0034] The facial animation method according to the invention is used inan animation engine implemented in a data processing means which isinstalled, for example, in a personal computer, a multimedia Internetserver, or a teleconferencing or teleworking terminal which has receivedthe three-dimensional image of the head TE of a speaker facing theterminal in order to transmit it to the terminal of a remote speakerduring the teleconference. In another variant, a virtual assistantinstalled in a public terminal providing access to databases, forexample shopping and tourist information databases, has stored thethree-dimensional image of the head TE of an operator-receptionist inorder to display it while information is being listened to. As shown inFIGS. 1 and 2, respectively in front view in a plane XOY and inright-hand side view in a plane YOZ, the head TE of the speaker or theoperator has been acquired by the data processing means in the form of athree-dimensional meshed image produced by a scanner or deduced from oneor more photographs of the head analyzed by software that is not part ofthe invention.

[0035] In an initial step E0, the head TE is defined superficially by aplurality of sets of polygonal (essentially triangular andquadrilateral) meshes in which respective animations can be applied.However, the bust BU covered by garments are generally not animated. Thesets of triangular meshes include particularly the facial epidermis, thelips LE, the right and left upper eyelids PD and PG, and the whites BOGand BOD of the left eye and the right eye, for example.

[0036] In the remainder of the description, S_(i) and S_(j) designateany two mesh nodes.

[0037] As shown in FIG. 3, the facial animation method implemented inthe form of software in the data processing means includes the initialstep E0 relating to the superficial meshing of the face in threedimensions, as described previously, followed by steps E1 to E5 specificto the invention. The method allows real time automatic animation of thehead, and in particular of the face, of the speaker or operator, as afunction of an analysis of their voice or a text, so as to translatephonemes into animation of the face of the speaker or operator. Movementof the lips is essential for this animation.

[0038]FIG. 4 shows in detail the set of triangular meshes LE comprisinga lower lip LI and an upper lip LS, as seen in front view by projectingthe set along the axis OZ onto the plane XOY. In accordance with theinvention, the step E1 distinguishes the lower lip LI and the upper lipLS, by means of the algorithm shown in FIG. 5, in order to animate thelips separately. This lip distinction algorithm comprises steps E11 toE18. In an initial step E10 included in step E0, all the coordinates ofthe nodes of the triangular meshes of the set LE are known.

[0039] In the first step E11, the mesh nodes S_(i) at the internalperiphery of the set LE are identified to define the interior contourC_(in) of the set of lips LE surrounding a slight opening of the mouthBO between the stationary lips and the corners at the ends of the lips.The mesh nodes at the external periphery of the set LE are identified todefine the exterior contour C_(ex) of the set LE of upper and lower lipspassing through the corners of the lips.

[0040] In step E12, the laterally outermost nodes Sing and S_(ind) alongthe abscissa axis OX, i.e. the leftmost and rightmost nodes, aredetected on the interior contour C_(in). Likewise, in step E13, thelaterally outermost nodes S_(exg) and S_(exd) along the abscissa axisOX, i.e. the leftmost and rightmost nodes, are detected on the exteriorcontour C_(ex); another node S_(inf) corresponding to the smallestordinate on the exterior contour C_(ex) is also detected.

[0041] The pairs of left-hand nodes (S_(ing), S_(exg)) and right-handnodes (S_(ind), S_(exd)) thus materialize the left and right corners ofthe lips.

[0042] Then all the mesh nodes to the left of the left node Sing of theinternal contour in FIG. 4 and having an ordinate Y less than the leftcorner segment S_(exg) S_(ing) having the ends previously detected aremarked in step E14 as being nodes belonging to the lower lip LI.Likewise, all the mesh nodes to the right of the right-hand node S_(ind)of the internal contour in FIG. 4 and having an ordinate Y less than theright corner segment S_(exd) S_(ind) having the ends previously detectedare marked in step E15 as being nodes belonging to the lower lip LI.Accordingly, in step E14 and E15 the mesh nodes below one of the cornersegments S_(exg) S_(ing) are marked as belonging to the lower lip LI.

[0043] In the next step E16, the lower node S_(inf) is marked as being anode belonging to the lower lip LI.

[0044] In step E17, all the mesh nodes that have not been marked, i.e.that are not at the level of the mouth opening BO and have an abscissa Xbetween the abscissae of the nodes of the internal contour of the lipsS_(ing) and S_(ind), starting with two nodes near the lower node S_(inf)of the lower lip LI and progressively inundating the lower lip, out tothe lip corner segments, are marked recursively as belonging to thelower lip LI, until there are no more nodes to be marked.

[0045] Then, in step E18, all of the other nodes that have not beenmarked in the set of lips LE and that do not belong to the lower lip LIare marked as belonging to the upper lip LS. At this stage, the upperand lower lips LI and LS are separately defined by two sets of meshnodes separated by the slight mouth opening OB between the lips andpossibly by boundary points at the level of the corners considered tobelong to the upper lip LS.

[0046] Referring to FIG. 3, the facial animation method continues withsteps E2 and E3 for positioning and defining specialized facial musclesfor opening the mouth which are modelled in a particular way anddetermining a lower zone ZI and an upper zone ZS in the head TE in orderto limit the action of the specialized muscles and control independentanimation of one lip relative to the other lip and thereby separation ofthe lips LI and LS.

[0047] As shown in FIG. 6 and set out in the FIG. 7 table, step E2defines a group of 17 muscles controlling the movement of the lips in anarea which is situated substantially under the nose and is symmetricalwith respect to an anterior-posterior median plane AP of the head TE. Asan alternative to this, step E2 can be executed after the initial stepE0. The seventeen muscles are:

[0048] left and right internal nasal-labial muscles M1G and M1Dextending obliquely downward along the alae of the nose;

[0049] a central labial levator muscle M2 whose attachment point issituated under the septum of the nose and which extends downward to thesub-nasal groove S_(sup) of the upper lip LS (FIG. 4);

[0050] left and right internal nasal-labial muscles M3G and M3D whoseattachment points are substantially at the root of the nostrils andextend substantially vertically downward to the external contour C_(ex)substantially between the node S_(sup) marking the sub-nasal groove andthe corners of the lips;

[0051] left and right large zygomaticus muscles M4G and M4D attachedsubstantially above the respective ears and extending obliquelysubstantially as far as the external nodes S_(exg) and S_(exd) at thecorners of the lips;

[0052] right and left risorius muscles M5G and. M5D extendingsubstantially horizontally from the middle of the cheeks to the externalnodes at the corners of the lips;

[0053] left and right angular depressor muscles M6G and M6D extendingsubstantially obliquely upward and laterally of the chin to the externalnodes at the corners of the lips;

[0054] left and right triangular muscles M7G and M7D extendingsubstantially vertically upward from the eminences of the chin to theexternal contour C_(ex) of the lower lip LI between the lower nodeS_(inf) and the external nodes at the corners of the lips;

[0055] a chin muscle M8 extending vertically from the cleft of the chinto the lower node S_(inf) of the lower lip LI;

[0056] right, left and front orbicularis muscles M9G, M9D and M9F whichhave attachment points at the middle MO (FIG. 4) of the mouth openingwhich is situated between the facing central nodes on the internalcontour C_(in) and which are respectively directed toward the nodesS_(ing) and S_(ind) of the segment of the mouth opening OB andhorizontally toward the interior of the mouth.

[0057] The three orbicularis muscles M9G, M9D and M9F constitute anannular muscle which acts as a sphincter around the mouth, centered onthe middle MO, for example to simulate the enunciation of the letter O.

[0058] In accordance with the invention, the actions of the seventeenmodelled muscles listed above and specializing in opening the mouth, tobe more specific in animating the lips, are limited to respectivedetermined zones of influence to enable separation of the lips. Toobtain this separation, step E3 defines a lower zone ZI of the face andan upper zone ZS of the face in order to limit the action of some ofthese muscles to respective nodes of one or both zones ZI and ZS, asindicated in the right-hand column of the FIG. 7 table.

[0059] As shown in detail in FIG. 8, which relates to FIG. 9, one of thetwo zones ZI and ZS, for example the lower zone ZI, is determined byfive steps E31 to E35.

[0060] In step E31, all the mesh nodes S_(i) of the lower lip LI in theset of meshes LE are marked as belonging to the lower zone ZI of theface. In step E32, the middle MB of the mouth is determined as being themiddle of the segment between the external nodes S_(exg) and S_(exd) atthe corners of the lips detected previously, in step E13 (FIG. 5), asbeing the outermost nodes on the exterior contour C_(ex). Left and rightjaw pivot axis nodes S_(pg) and S_(pd) are determined in step E33substantially at the base of the ears to mark a horizontal pivoting axisof the jaws, in particular of the lower jaw, as shown in FIG. 2.

[0061] In the next step E34 all the mesh nodes S_(i) of the head and inparticular of the set of surface meshes referred to as the “facialepidermis”, situated under the segment S_(pg) S_(exg) on the left-handprofile projection (not shown) for the nodes to the left of the middleMB of the mouth, i.e. to the left of the anterior-posterior median planeAP of the head TE, are marked as belonging to the lower zone ZI.Similarly, all the nodes of the “facial epidermis” set of meshessituated under the segment S_(pd) S_(exd) on the right-hand profileprojection shown in FIG. 2, for the nodes to the right of the middle MBof the mouth, i.e. to the right of the anterior-posterior median planeAP of the head TE, are marked as belonging to the lower zone ZI. Thelower zone is therefore situated under a broken line joining the pivotaxis nodes S_(pg) S_(pd) through the segment between the external cornernodes S_(exg) and S_(exd).

[0062] Then, in step E35, all the other mesh nodes of the head, inparticular of the “facial epidermis” set, are marked as belonging to theupper zone ZS of the head.

[0063] In FIG. 9, the shaded mesh portion represents the lower zone ZIand the unshaded mesh portion represents the upper zone ZS.

[0064] As shown in the left-hand column of the FIG. 7 table, whichrelates to FIG. 6, the muscles M2, M3G and M3D above the upper lip LSare operative only in the upper zone ZS and the muscles M7G, M7D and M8under the lower lip LI are operative only in the lower zone ZI, to movethe lips toward and away from each other. The other muscles of the FIG.7 table situated laterally of the mouth each move mesh nodes in thelower and upper zones at the same time to stretch and contract the lipslaterally or obliquely.

[0065] The invention adopts a muscular model, shown in FIG. 10, somewhatsimilar to that recommended by WATERS, taking account of the elasticityof the skin in the muscular contraction itself, which avoids long andfastidious computations.

[0066] A modelled muscle is attached to the meshed head by only twopoints, very often coinciding with mesh nodes, and which are representedby the origin and the oriented extremity of a muscle vector$\overset{\rightarrow}{AI}.$

[0067] The origin of the vector constitutes a point of attachment A ofthe muscle considered as the root of the muscle, since from a biologicalpoint of view it is attached to the bones of the head TE. The orientedextremity constitutes a point of insertion I of the muscle into thetissue. During contraction, the point of attachment A and the point ofinsertion I remain stationary and the muscle acts like a convergentmagnetic field, attracting the mesh nodes S_(i) situated in a conicalzone of influence ZN near the vector $\overset{\rightarrow}{AI}$

[0068] in the direction of the origin A of the vector, as can be seen inFIGS. 11A and 11B for 20% and 60% contractions of the muscle modelled inaccordance with the invention. The zone of influence ZN of the musclecorresponds to a circular cone with generatrices AB, an axis along thevector $\overset{\rightarrow}{AI},$

[0069] a cone angle α and a spherical base BB with center A. The conicalzone of influence ZN contains the whole of the vector$\overset{\rightarrow}{AI},$

[0070] as shown in FIG. 10.

[0071] The modelled muscle vector $\overset{\rightarrow}{AI}$

[0072] in the zone of influence ZN is defined by the followingparameters:

[0073] a circular aperture angle α which defines, for an angleβ=IAS_(i)relative to the direction of the vector of displacement$\overset{\rightarrow}{\delta \quad S_{i}}$

[0074] of a mesh node S_(i) relative to the axis AI of the zone ofinfluence ZN, the limit not to be exceeded for the node S_(i) to bemoved in the zone of influence ZN of the muscle upon contractionthereof;

[0075] a zone of angular and radial attenuation AAR of the contractionof the muscle delimited by a frustum of a cone with generatrices TB andconcentric spherical bases TT and BB, situated at the sphericalperiphery of the zone of influence ZN and containing the orientedextremity I of the vector $\overset{\rightarrow}{AI}$

[0076] with a predetermined width TB within which the mesh nodes S_(i)are moved by the muscle more and more when the node S_(i) is situatednear the point of intersection I′ of the muscular segment AI and thesmaller base TT;

[0077] a zone of angular attenuation AA of the contraction of the muscledelimited by a cone between the node A and the smaller base TT, insidewhich the mesh nodes S_(i) are moved by the muscle more and more whenthe node S_(i) is situated near the muscle segment AI and the node A.

[0078] The nodes S_(i) on the periphery of the zone of influence ZN,i.e. on the conical surface with generatrix AB and on the sphericallarger base BB, are stationary during contraction of the muscle. If theangle β=IAS_(i) increases until it is equal to the angle α, anattenuation δ of the displacement is more and more dominant (δ≈0), whichprevents an exaggerated boundary appearing between the nodes that aredisplaced and their neighbors that are not. The displacement of a meshnode S_(i) is computed by adding a displacement vector$\overset{\rightarrow}{\delta \quad S_{i}}$

[0079] in the opposite direction to the vector$\overset{\rightarrow}{A\quad S_{i}}$

[0080] to the coordinates X, Y, Z of the node S_(i) in accordance withthe following equation:${\overset{\rightarrow}{\delta \quad S_{i}} = {{- C} \cdot \delta \cdot {\overset{\rightarrow}{AS}}_{i}}},$

[0081] in which C is a percentage of contraction of the muscle and δ isan attenuation coefficient equal to the product of an angularattenuation coefficient δ_(A) and a radial attenuation coefficientδ_(R), which are defined as follows:$\delta_{A} = \frac{{\cos \quad \beta} - {\cos \quad \alpha}}{1 - {\cos \quad \alpha}}$

 δ_(R)=cos((∥T′S _(i) ∥/∥TB∥)(π/2))

[0082] where δ=δ_(A)·δ_(R) if ∥AS_(i)∥>∥AT∥

[0083] and δ=δ_(A) and δ_(R)=1 if ∥AS_(i)∥≦∥AR∥,

[0084] and T′ is the intersection of AS_(i) with the base TT.

[0085] The attenuation coefficient δ_(A) is specific to the inventionand depends on the angular distance β between the vectors${\overset{\rightarrow}{AS}}_{i}$

[0086] and $\overset{\rightarrow}{A\quad I}.$

[0087] The maximum contraction, i.e. the contraction when${\overset{\rightarrow}{\delta \quad S_{i}} = {{- C} \cdot {\overset{\rightarrow}{AS}}_{i}}},$

[0088] is obtained uniquely for the nodes included in the segment AI′where β0 and δ_(A)=δ=1, the point I′ being the node that can bedisplaced farthest. The attenuation coefficient δ_(R) is a function ofthe radial distance between the points S_(i) and T′ and varies only inthe frustoconical area AAR, between 0 and 1 and from the smaller base TTtoward the larger base BB.

[0089] As can also be seen in FIG. 6, other modelled facial muscleslocated on the forehead are provided for animating the left and righteyebrows SG and SD. The modelled muscles listed in the FIG. 12 tableare:

[0090] left and right external frontal muscles M10G and M10D, left andright frontal muscles M11G, M11D, and left and right large frontalmuscles M12G and M12D which are attached to the forehead andrespectively extend downward substantially as far as the external,middle and internal extremities of the left and right eyebrows SG andSD;

[0091] left and right lateral corrugator muscles M13G and M13D which areattached substantially laterally to the top of the nose and directedupward, respectively as far as the left and right eyebrows, between thepoints of attachment of the muscles M11G-M12G and M11D-M12D;

[0092] left and right lower orbicularis muscles M14G and M14D and leftand right upper orbicularis muscles M15G and M15D which are respectivelyattached to the external corners of the eyes and to the middle of theupper eyelids PAG and PAD, and which respectively extend upwardsubstantially toward the external extremities of the eyebrows anddownward substantially toward the middles of the lower eyelids, to lowerthe exterior extremities of the eyebrows and raise the eyelids.

[0093] As already stated, when a muscle acts on a mesh node S_(i), itgenerates a displacement vector {right arrow over (δS_(i))} which mustbe added to the coordinates of the node Si to obtain the displaced node.However, if a mesh node Si is situated in more than one intersectingzones of influence of muscle, and is therefore subjected to the actionof all those muscles, adding displacement vectors without takingappropriate precautions may generate an exaggerated displacement of themesh node resulting from the addition of the vectors. The displaced nodemay be attracted farther than the points of attachment of the modelledmuscles that contribute to the displacement.

[0094] For example, three muscles${\overset{\rightarrow}{A_{1}I}}_{1},{\overset{\rightarrow}{A_{2}I}}_{2}$

[0095] and ${\overset{\rightarrow}{A_{3}I}}_{3}$

[0096] have intersecting zones of influence ZN₁, ZN₂ and ZN₃ shown inFIG. 13A. The muscle vectors of these three muscles meet at a commonmesh node SC. The addition of the action of these three vectors on thecommon mesh nodes, such as the node SC, common to the three zones ofinfluence, with a contribution of C=20% for each of them, keeps thedisplaced nodes S_(CA) in the zones of influence. On the other hand, ifthe percentage of contraction C is higher, for example equal to 60%, asshown in FIG. 13B, applying resultant vectors obtained by adding thecontributions of the three muscles A₁I₁, A₂I₂ and A₃I₃ to the commonmesh nodes, such as the node SC, generates displaced nodes SC_(B) thatare drawn out of the zones of influence ZN₁, ZN₂ and ZN₃, which isimpossible in practice.

[0097] To overcome this problem, step E4 classifies the modelled facialmuscles to constitute groups G1 to G5 according to their orientation, asshown in the FIG. 14 table.

[0098] The first group G1 comprises the muscles M2, M3G, M3D, M4G andM4D attached to the upper lip LS and having zones of influenceintersecting at least two by two between adjoining muscles to displacemesh nodes S_(i) in the lip LS and under the nose NE. The second groupG2 comprises the muscles M6G, M6D, M7G, M7D and M8 attached to the lowerlip LI and having zones of influence intersecting at least two by twobetween adjoining muscles to displace mesh nodes S_(i) in the lip LI andthe chin ME. The third group G3 comprises the left frontal muscles M10G,M11G, M12G and M15G situated substantially in the left frontal portionand having zones of influence intersecting at least two by two, in ananalogous manner to FIG. 13A, to displace frontal mesh nodes S_(i)substantially in and/or above the eyebrow SG and/or the eyelid PAG.Similarly, the fourth group G4 comprises the right frontal muscles M10D,M11D, M12D and M15D respectively symmetrical to the muscles M10G, M11G,M12G and M15G.

[0099] In each of the first four groups G1, G2, G3 and G4, thedisplacement vector of a mesh node S_(i) is determined by adding thedisplacement vectors resulting from the action of the muscles of thegroup able to act on the mesh node S_(i) to obtain a resultant vectorwhich is then truncated so that the modulus of the resultant vector isequal to the highest modulus of the displacement vectors of the musclesthat have to act.

[0100] For example, if the aforementioned three muscles A₁I₁, A₂I₂ andA₃I₃ shown in FIGS. 13A and 13B belong to one of the four groups G1 toG4 and have zones of influence ZN₁, ZN₂ and ZN₃ containing in common atleast one mesh node S_(i), for example like the muscles M3D, M2 and M3Gin the first group G1, or the muscles M7D, M8 and M7G in the secondgroup G2, the node S_(i) is displaced in accordance with the inventionby a vector having the same direction as the resultant vector equal tothe sum of the displacement vectors$\overset{\rightarrow}{\delta \quad S_{i1}},\overset{\rightarrow}{\delta \quad S_{i2}}$

[0101] and $\overset{\rightarrow}{\delta \quad S_{i3}}$

[0102] of the three muscles, in other words: $\begin{matrix}{\overset{\rightarrow}{\delta \quad S_{i}} = {\overset{\rightarrow}{\delta \quad S_{i1}} + \overset{\rightarrow}{\delta \quad S_{i2}} + \overset{\rightarrow}{\delta \quad S_{i3}}}} \\{\overset{\rightarrow}{\delta \quad S_{i}} = {{{- C_{1}} \cdot \delta_{1} \cdot \overset{\rightarrow}{{A\quad}_{1}S_{i}}} - {C_{2} \cdot \delta_{2} \cdot \overset{\rightarrow}{{A\quad}_{2}S_{i}}} - {C_{3} \cdot \delta_{3} \cdot \overset{\rightarrow}{{A\quad}_{3}S_{i}}}}}\end{matrix}$

[0103] and having the same modulus as the vector$\overset{\rightarrow}{\delta \quad S_{i}}$

[0104] if:${\overset{}{{\delta S}_{i}}} \leq {\sup\left( {{\overset{}{{\delta S}_{i1}}},\quad {\overset{}{{\delta S}_{i2}}},\quad {\overset{}{{\delta S}_{i3}}}}\quad \right)}$

[0105] and a modulus equal to the highest of the three moduli, denoted“sup”, otherwise. In the foregoing equations, C₁, C₂ and C₃ designaterespective contractions of the three muscles A₁I₁, A₂I₂ and A₃I₃, andδ₁, δ₂ and δ₃ designate attenuation coefficients respectively dependingon the location of the node S_(i) in the zones of influence ZN₁, ZN₂ andZN₃.

[0106] The last group G5 comprises various muscles and in particularmodelled muscles M4G, M4D, M5G, M5D, M6G, M6D, M9G, M9D and M9F havingzones of influence for displacing each of the nodes which are partly inthe upper zone ZS substantially above the lower lip LI and partly in thelower zone ZI substantially below the upper lip LS, which enables thesemuscles to stretch and contract the lips.

[0107] The group G5 also comprises muscles which are chosen so thateither a node can be in the zone of influence of only one muscle or thedisplacements are orthogonal. The group G5 thus comprises modelledmuscles M5G and M5D respectively attached to the corners of the lipsS_(exg) and S_(exd) and having independent zones of influence forrespectively and independently displacing mesh nodes in oppositedirections toward the exterior of the corners of the lips S_(exg) andS_(exd), and modelled muscles M9G, M9D and M9F attached to the middle ofthe mouth and having independent zones of influence for respectively andindependently displacing mesh nodes toward the corners of the lipsS_(exg) and S_(exd) and toward the inside of the mouth.

[0108] As an alternative to the above, a modelled muscle vector${\overset{}{AI},}\quad$

[0109] whose points of attachment are the origin A and the orientedextremity I of the vector, is defined by parameters in a zone ofinfluence zn with an elliptical base, as shown in FIGS. 15 and 16. Theparameters are substantially similar to those defined for the zone ofinfluence ZN shown in FIG. 10, and are designated hereinafter by thecorresponding lowercase letters. They are, in addition to the twoattachment points:

[0110] a displacement “disp” toward the rear of the origin A of thevector $\overset{}{AI}$

[0111] away from the oriented extremity I, to a point dA such that:$\overset{}{AI} = {A - {dA}}$

[0112] so that, for short muscles in particular, the forces do notconverge in a very dense manner toward the origin A, but seem toconverge toward the “rear” point dA;

[0113] two elliptical aperture angles α_(eh) and α_(ev) in the planes xzand yz due to the elliptical contour sections of the zone of influencezn perpendicular to the direction of the vector {right arrow over (AI)},and to the ellipsoidal base bb terminating the zone of influence zn infront of the extremity I; if 2h and 2e denote the major axis and theminor axis of an elliptical section with center S′_(j) on the verticalaxis Z colinear with the segment AI, and S_(j) a mesh node at the samelevel as S′_(j) in the zone of influence zn, the coordinates x and y ofthe node S_(j) are such that:

(x ² /h ²)+(y ² /v ²)=1

[0114] i.e. with β_(e)=IdAS_(j) relative to the direction of thedisplacement vector ${\overset{}{\delta \quad S}}_{j}$

[0115] of the node S_(j) relative to the axis z of the zone ofinfluence:

r ²=(S _(j) S′ _(j))²=1/[ sin²β_(e) /h ²+cos²βe/v ²]

h=∥dAS′ _(j) ∥tgα _(eh)

v=∥dAS′ _(j) ∥tgα _(ev)

[0116] a zone of angular and radial attenuation aar of the contractionof the muscle delimited by a frustum of a cone with generatrix tb andconcentric ellipsoidal bases tt and bb, situated at the ellipsoidalperiphery of the zone of influence zn and containing the orientedextremity I of the vector ${\overset{}{AI},}\quad$

[0117] and with a predetermined width tb within which the mesh nodesS_(j) are displaced by the muscle more and more when the node S_(j) issituated near the point of intersection i′ of the muscular segment AIand the smaller base tt;

[0118] a zone of angular attenuation aa of the contraction of the muscledelimited by a frustum of a cone with a smaller base aa around theorigin A and an intermediate base tt, within which the mesh nodes S_(j)are displaced by the muscle more and more when the node S_(j) issituated near the muscular segment AI and the node A.

[0119] It will be noted that the conical area having the base aa and theapex dA does not belong to the zone of influence zn.

[0120] The nodes S_(j) at the periphery of the zone of influence zn,i.e. on the conical surface with the generatrix ab and on the sphericallarger base bb, are stationary when the muscle contracts. If the radialdistance S′_(j)S_(j) increases until it is equal to the radius of thecorresponding elliptical section, an attenuation δ_(e) of thedisplacement is more and more dominant (δ_(e)≈0), which prevents anexaggerated boundary appearing between the nodes that are displaced andtheir neighbours that are not. The displacement of a mesh node S_(j) iscomputed by adding a displacement vector${\overset{}{\delta \quad S}}_{j}$

[0121] in the opposite direction to the vector$d{\overset{\rightarrow}{AS}}_{j}$

[0122] to the coordinates x, y, z of the node S_(j), in accordance withthe following equation:${\overset{\rightarrow}{\delta \quad S}}_{j} = {{{- C_{e}} \cdot \delta_{e} \cdot d}{\overset{\rightarrow}{AS}}_{j},}$

[0123] in which C_(e) is a percentage of contraction of the muscle andδ_(e) is a coefficient of attenuation equal to the product of an angularattenuation coefficient δ_(eA) and a radial attenuation coefficientδ_(eR) defined as follows:

δ_(eA)=(r ² −∥S′ _(j) S _(j) ∥/r ²

δ_(eA)=(r ² −∥S′ _(j) S _(j)∥)/r ²

δ_(eR)=(∥AI∥/∥dAI∥)cos [((∥dAS _(j) ∥−∥dAt′∥)/(∥dAS′ _(j)∥−∥dAt′∥))(π/2)]

[0124] with δ_(e)=δ_(eA·δ) _(eR) if ∥dAS_(j)∥>∥dAt∥

[0125] and δ_(e)=δ_(eA)=∥AI∥/∥dAI∥ and δ_(eR)=1 if ∥dAa∥≦∥dAS_(j)∥≦∥dAt∥

[0126] and t′ the intersection of dAS_(j) with the base tt.

[0127] The modelled muscle with zone of influence zn functions in ananalogous manner to the modelled muscle with the zone of influence ZN.

[0128] In a hybrid variant, the muscles of the head are defined partlywith a zone of influence ZN (FIG. 10) and partly with a zone ofinfluence zn (FIGS. 15 and 16).

[0129] Facial animation in accordance with the invention also includesparametric animation of other organs such as the eyes and the uppereyelids, the lower jaw and the neck, whose parameters are defined instep E5 (FIG. 5), which is shown as following on from the associationstep E4, although it can be executed before this, for example after theinitial step E0.

[0130] In the initial step E0, the sets of meshes relating to the eyes,i.e. to the whites BOG of the left eye and BOD of the right eyerespectively containing the left iris and pupil and the right iris andpupil, and relating to the left and right eyelids PAG and PAD, areperfectly defined. The sets BOG, BOD are assumed to be substantiallyhemispheres, and the sets PAG and PAD portions of a sphere.

[0131] To animate a given eye, for example the right eye BOG, a rotationcenter RO of the eye and a rotation axis AP of the corresponding eyelidPAD are searched for in steps E51 and E52 shown in FIG. 15.

[0132] Step E51 searches automatically for two mesh nodes S_(i) andS_(j) that are farthest apart in the set of meshes relating to the whiteBOG of the corresponding eye. The two nodes S_(i) and S_(j) that arefarthest apart define the extremities of a segment forming a diameter ofthe half-sphere of the eye and the middle of the diametral segmentjoining these two nodes defines the rotation center RO of the eye. StepE51 is repeated for each eye. Since the face at rest is parallel to theplane XOY in a front view and parallel to the plane YOZ in a side view,each eye can rotate about the respective center RO and around the axesOX and OY to simulate looking upward or downward and/or to the right orto the left.

[0133] Step E52 determines a rotation axis AP of the corresponding uppereyelid automatically and in a similar fashion, by searching for two meshnodes S_(i) and S_(j) that are farthest apart in the corresponding setof meshes PAD. The rotation axis about which the set of meshes PAD canturn to simulate opening and closing of the eyelid passes through thesetwo mesh nodes. Step E52 is repeated for the other eyelid PAG.

[0134] Animation of the lower jaw MA operates on set's of meshesrelating to the facial epidermis.

[0135] Step E53 determines mesh nodes with reference to FIG. 2 as:

[0136] two jaw pivot axis nodes S_(pg) and S_(pd) that are generallycoincident in side view (FIG. 2), if they have not been determinedalready in step E33 (FIG. 8),

[0137] a chin node S_(me) situated in the median anterior-posteriorplane of the head TE and substantially at the origin of the chin cleft,and

[0138] a head-neck transition node S_(CO) substantially in theanterior-posterior median plane and at the apex of the angle between theunderside of the chin and the anterior part of the neck.

[0139] These three mesh nodes define a jaw articulation angular sectorAM with nodes S_(pd)(S_(pg)) and sides S_(pd) S_(me) (S_(pg) S_(me)) andS_(pd) S_(CO).

[0140] Step E54 then determines a predetermined angular sector α_(M)less than the jaw articulation sector AM=S_(me) S_(pd) S_(CO)=S_(me)S_(pg) S_(CO), contained in the sector AM from the common lower sideS_(pd) S_(CO), as shown in FIG. 2. A node S1 _(CO) is defined at theintersection of the upper side of the angle α_(M) and the chin.

[0141] The lower jaw MA is then defined in FIG. 2 by the angular sectorAM formed by the sides S_(pd) S_(me) and S_(pd) S_(CO) of thearticulation angle AM.

[0142] In step E55, the nodes Si of the set of “facial epidermis” meshessubstantially contained within the articulation angular sector AM aremarked as belonging to the jaw MA. The mouth is not affected by therotation of the jaw and is animated only by the muscles already definedwith reference to FIGS. 6 and 7.

[0143] The jaw turns about the axis S_(pd) S_(pg) parallel to the axisOX, as shown in FIG. 9. To prevent the jaw MA colliding with the neckCO, the rotation of the jaw is progressively retarded in the downwarddirection for mesh nodes in the facial epidermis and buccal cavity setsthat are within the angular sector α_(M), until it becomes zero in thevicinity of the segment S_(pd) S_(CO) The angular segment α_(M) definesthe area in which the rotation of the jaw is attenuated.

[0144] Subsequently, a rotation β_(M) of the jaw MA, typically of lessthan 10° or 15°, operates completely (β=β_(M)) on the mesh nodes S_(i)situated within the angular sector AM−α_(M)=[S_(me) S_(pd) S1 _(CO)] inthe upper part of the articulation sector AM and in an attenuated manneron the mesh nodes S_(i) within the angular sector α_(M). When theangular distance α_(i)=[S_(CO) S_(pd) S_(i)] between the mesh node S_(i)and the lower side S_(pd) S_(me) common to the angular sectors AM andα_(M) decreases, the angular displacement β_(M) of the node S_(i)initially provided for the jaw decreases as a function of an attenuationcoefficient δ_(M) in order for the angular displacement β′_(M) of thenode in the sector α_(M) to be as follows:

β′_(M)=β_(M)·δ_(M)${{with}\quad \delta_{M}} = {{1 - {{\cos \left( {\frac{\alpha_{i}}{\alpha_{M}}\frac{\pi}{2}} \right)}{for}\quad S_{i}}}\quad \in {\alpha_{M}.}}$

[0145] The neck Co is uniquely a portion of the set of “facialepidermis” meshes. Step E56 determines the neck using the next fournodes of this set in the anterior-posterior median plane AP of the head:

[0146] upper and lower anterior nodes S_(sup1) and S_(inf1) situatedalong the anterior profile of the neck and substantially below the nodeS_(CO) and above the origin of the bust BU, and

[0147] upper and lower posterior nodes S_(sup2) and S_(inf2) along theposterior profile of the neck and substantially at the level of themiddle MB of the mouth and above the origin of the back.

[0148] The next step E57 marks the mesh nodes S_(i) of the set of“facial epidermis” meshes as belonging to the neck CO if they aresubstantially between the lateral planes passing through the upper nodesS_(sup1) and S_(sup2) and the lower nodes S_(inf1), and S_(inf2). Then,in step E58, all the other nodes of the “facial epidermis” set that donot belong to the neck, along with all the other nodes in all the othersets of meshes of the head, with the exception of the lower set relatingto the bust BU, are explored above the upper anterior node S_(sup1) tobe marked as belonging to the head TE.

[0149] Step E59 automatically determines a center of rotation CRT of thehead coinciding with the center of the volume encompassing the meshnodes belonging to the neck CO. Although the center of rotation CRT issubstantially in front of the real center of rotation of the head, thevisual effect of the rotation of the head obtained in this way issatisfactory.

[0150] The rotation of the head is associated with an attenuation of therotation at the level of the neck between the trace planes S_(sup1)S_(sup2) and S_(inf1 S) _(inf2) Step E60 determines minimum and maximumordinates Y_(min) and Y_(max) of the nodes S_(sup1), S_(sup2), S_(inf1)and S_(inf2) defining the neck as a function of the ordinates Y_(sup1),Y_(sup2), Y_(inf1), and Y_(inf2) of these four nodes, such that:

Y _(min) =min(Y _(sup1) , Y _(sup2) , Y _(inf1) , Y _(inf2))

Y _(max) =max(Y _(sup1) , Y _(sup2) , Y _(inf1) , Y _(inf2))

[0151] A subsequent rotation βT of the head TE, typically of less than10° to 15°, operates completely (β′_(T)=β_(T)) on the mesh nodessituated above the lateral plane passing through the upper nodesS_(sup1) and S_(sup2) and in an attenuated fashion on the mesh nodesS_(i) within the neck CO. The closer the mesh node S_(i) to the lateralplane of the neck passing through the lower nodes S_(inf1), andS_(inf2), the greater the angular displacement β_(T) of the mesh nodeS_(i) initially provided for the head TE decreases as a function of theratio between the difference between the ordinate Y_(Si) of the meshnode S_(i) and the minimum ordinate and the maximum height(Y_(max)−Y_(min)) of the neck, in order for the displacement β′_(T) ofthe node S_(i) in the neck to be as follows:

β′_(T)=β_(T)·δ_(T)

[0152]$\delta_{T} = \frac{\left( {Y_{Si} - Y_{\min}} \right)}{\left( {Y_{\max} - Y_{\min}} \right)}$

[0153] Two embodiments of an interactive client-server system forimplementing the facial animation method according to the invention aredescribed by way of example hereinafter.

[0154] In a first embodiment intended for teaching, and shown in FIG.18, the client CLa is a pupil's microcomputer including an animationmodule MAa constituting a processor in which a facial animation engineaccording to the invention is implemented. The animation module MAa haspreviously acquired sets of meshes EM and parameters P of the head TE ofa “teacher” that are downloaded from a server SE1 offering the pupil aplurality of teacher heads. These sets of meshes and parameters definingthe head of the teacher and downloaded into the module MAa are some orall of the following:

[0155] sets of meshes EM modelling the head of the teacher in threedimensions using the Virtual Reality Modelling Language (VRML), and

[0156] parameters P necessary for defining the parametric and muscularanimations already defined in the foregoing description:

[0157] jaw: S_(pd)(S_(pg)), S_(me), S_(CO), α_(M) (FIG. 2);

[0158] neck: S_(inf1), S_(inf2), S_(sup1), S_(sup2) (FIG. 2);

[0159] muscles (FIGS. 6, 7 and 12): A, I, ZN in FIG. 10 and/or A, I, znin the embodiment shown in FIGS. 15 and 16,

[0160] where the parameters S_(pd), S_(pg), S_(me), S_(CO), S_(inf1),S_(inf2), S_(sup1), S_(sup2), A and I are mesh nodes each marked by amesh number and a mesh node number,

[0161] AT and AB and/or dAt and dAb are expressed as fractions of themodulus of the vector $\overset{\rightarrow}{AI},$

[0162] and

[0163] α_(M), α and/or α_(eh), α_(ev) and β_(e) are angles expressed indegrees.

[0164] The server SE2 a of the client-server system of the firstembodiment, acting as teacher, comprises a facial animation interfaceIAF and a scenario base BS. The interface IAF receives QR/CL question orresponse digital messages from the microphone MP or the keyboard KP ofthe client CLa and interprets them as requests RQ applied to the baseBS, which selects responses RP in accordance with a predeterminedscenario. A response RP is interpreted by the interface IAF in such amanner as to feed, on the one hand, a QR/SE question or response messageto the loudspeaker HP of the client CLa and, on the other hand,animation commands CA to the animation module MAa to animate the head ofthe teacher displayed on the screen of the client CLa in harmony withthe QR/SE message transmitted.

[0165] For example, a professor-pupil application of this embodimentconsists in the pupil revising lessons by exchanging questions-responseswith the teacher. In this type of application, the pupil-client CLaremains connected to the teacher-server SE2 a throughout the lessonsession and is controlled completely by the teacher-server.

[0166] The animation commands CA are not tied to the animation enginecontained in the module MAa of the client, and control the animation ofthe head of the teacher as a function of the responses RP supplied bythe base BS. In this first embodiment, the animation commands CA and theQR/CL and QR/SE messages are exchanged between the client CLa and theserver SE2 a via a telecommunication network RT; for example, the serverSE2 a is a software application on an Internet site or in a physicalserver of an Intranet network. By way of non-exhaustive example, theanimation commands CA relate to all or some of the following facialanimations:

[0167] turning the head TE X degrees about the axis OX, Y degrees aboutthe axis OY and Z degrees about the axis OZ;

[0168] turning the right eye BOD or the left eye BOG X degrees about theaxis OX and Y degrees about the axis OY;

[0169] turning the right eyelid PAD or the left eyelid PAG Q degreesabout the respective right or left axis APA;

[0170] enunciating a text in a synthesized and amplified voice toproduce the corresponding labial animation;

[0171] enunciating a sound to produce the corresponding labialanimation;

[0172] choosing a neutral expression for the face of the head; and

[0173] portraying an emotion, joy or sadness, for example with apredetermined percentage.

[0174] The second embodiment of the client-server system, shown in FIG.19, is more localized in hardware terms in a client CLb which is a homecomputer installed in the home of a user. The client CLb also containsan animation module MAb which an animation engine according to theinvention and a second software module called as conversational moduleMC are implemented. The module MC has substantially the same role as thefacial animation interface IAF of the first embodiment, and makes theclient CLb more autonomous than the client CLa. The animation engine haspreviously acquired sets of meshes EM and parameters P defining a headof a receptionist, either during installation of the client CLb or bysubsequently consulting the first server SE1. The conversational moduleMC uses artificial intelligence and plays the role of the user's“confidante”. Thus this “confidante” occupies itself with various tasksfor managing the user's home, such as regulating the temperature of theboiler, managing an alarm system and/or participating in maintenance, aswell as collecting information from various servers, such as the serverSE3 shown in FIG. 7. The servers SE3 make available databases BD,including scenario databases, for consulting diverse information, suchas cinema times, weather forecasts, lists of restaurants, etc.

[0175] The conversational module MC acquires responses RP to requests RQaddressed to one of the servers SE3 to animate the head of thereceptionist displayed on the screen of the client CLb as a function ofanimation commands CA as defined above, either in real time or off-line.For example, if the user is seeking cinema times or a weather forecast,he formulates a QR/CL message to the conversational module MC via themicrophone MP or the keyboard KP of the client CLb and the module MCimmediately forwards a QR/SE response message to the loudspeaker HP ofthe client CLb with corresponding animation commands CA applied to themodule Mab, if the conversational module has already stored the cinematimes or the weather forecast. If not, the conversational module MAbinterrogates the corresponding server SE3 via a telecommunicationnetwork RT, to read therein the times or forecasts, which will then besent off-line to the user via the animation module MAb so that the usercan consult the cinema times in the evening and the weather forecast onwaking up.

[0176] In this second embodiment, the hardware client CLb has aclient-server processing model between the modules MAb and MC, and adata client-server combination with the server SE3.

[0177] The two embodiments of client-server system described aboveadvantageously are free of timing constraints because the animationcommands CA for the animation module MAa, MAb are not predefined butexecuted in real time as a function of QR/SE messages from the “server”IAF, MC. The animation commands are synchronized at the level of theanimation module MAa, MAb of the-client, and not at the server level,which prevents any time lapse between the spoken sound and the animationof the lips.

1. A method of animating a head (TE) imaged in three dimensions andacquired in a data processing means in the form of sets of meshesincluding a set of lips, by means of modelled facial muscles,characterized in that it includes the steps of: distinguishing (E1)lower and upper lips (LI, LS) in the set of lips (LE) as a function ofmesh nodes (S_(exg), S_(exd), S_(ing), S_(ind)) at the level of a lipcorner and mouth opening (BO) boundary, determining (E3) upper and lowerzones (ZI, ZS) of the head substantially shared by at least saidboundary, and constituting (E4) a first group (G1) of modelled muscles(M2, M3G, M3D, M4G, M4D) extending toward the upper lip (LS) and havingzones of influence intersecting at least two by two situated in theupper zone (ZS) for displacing mesh nodes in the upper lip (LS) andunder the nose (NE) of the head, a second group (G2) of modelled muscles(M6G, M6D, M7G, M7D, M8) extending toward the lower lip (LI) and havingzones of influence intersecting at least two by two situated in thelower zone (ZI) for displacing mesh nodes in the lower lip (LI) and inthe chin (ME) of the head, and a last group of modelled muscles (M4G,M4D, M5G, M5D, M6G, M6D, M9G, M9D, M9F) having zones of influence fordisplacing each of the mesh nodes in the upper and lower zones in orderto stretch and contract the lips.
 2. A method according to claim 1,wherein said last group includes modelled muscles (M5G, M5D) extendingrespectively upto the corners of the lips (S_(exg), S_(exd)) and havingindependent zones of influence for respectively and independently movingmesh nodes in opposite directions toward the exterior of the corners ofthe lips.
 3. A method according to claim 1 or 2, wherein said last groupincludes modelled muscles (M9G, M9D, M9F) attached to the middle of themouth and having independent zones of influence for respectively andindependently displacing mesh nodes toward the corners of the lips(S_(exg), S_(exd)) and toward the interior of the mouth (BO).
 4. Amethod according to any one of claims 1 to 3, wherein the distinguishingstep (E1) includes the following steps: identifying (E11) mesh nodes atthe periphery of the set of lips (LE) to define interior and exteriorcontours (C_(in), C_(ex)) of the lips, detecting (E12, E13) laterallyoutermost mesh nodes (S_(exg), S_(ing), S_(ind), S_(exd)) on theinterior and exterior contours (C_(in), C_(ex)), marking (E14, E15) meshnodes below one of the lip corner segments defined by the nodespreviously detected as belonging to the lower lip LI, recursivelymarking (E16, E17) all the unmarked mesh nodes, starting with nodes neara lower node (S_(inf)) of the lower lip (LI), as belonging to the lowerlip, and marking (E18) all the other unmarked nodes in the set of lips(LE) not belonging to the lower lip (LI) as belonging to the upper lip(LS).
 5. A method according to claim 4, wherein the determining step(E3) includes the following steps: determining (E32) the middle (MB) ofa segment between the external nodes (S_(exg), S_(exd)) as the laterallyoutermost detected on the exterior contour (C_(ex)) of the lips,determining (E33) jaw pivot axis nodes (S_(pg), S_(pd)), marking (E34)all the nodes situated under a broken line joining the pivot axis nodes(S_(pg), S_(pd)) through the segment between the external nodes(S_(exg), E_(exd)) as belonging to the lower zone (ZI), and marking(E35) all the other mesh nodes of the head as belonging to the upperzone (ZS).
 6. A method according to any one of claims 1 to 5, wherein amodelled muscle is defined by a conical zone of influence (ZN) having acone angle α, characterized in that a mesh node (S_(i)) inside the zoneof influence is subjected to a displacement vector$\left( \overset{\rightarrow}{\delta \quad S_{i}} \right)$

that is directed toward the apex (A) of the conical zone of influence atan angle β to the axis (AI) of the zone of influence and which isproportional to an angular attenuation coefficient δ_(A) defined asfollows:$\delta_{A} = \frac{{\cos \quad \beta} - {\cos \quad \alpha}}{1 - {\cos \quad \alpha}}$


7. A method according to any one of claims 1 to 5, wherein a modelledmuscle is defined by a vector having an origin A, an oriented extremityI in a frustoconical zone of influence (zn) having an apex dA, and twoelliptical aperture angles, in which a mesh node S_(j) situated at aradial distance S′_(j)S_(j) from the axis of the zone in an ellipticalsection of radius r passing through the node is subjected to adisplacement vector which is directed toward the node dA of the zone ofinfluence and which is proportional to an angular attenuationcoefficient δ_(eA) and to a radial attenuation coefficient δ_(eR)defined as follows: δ_(eA)=(r ² −∥S′ _(j) S _(j) ∥/r ²δ_(eR)=(∥AI∥/∥dAI∥)cos [((∥dAS _(j) ∥−∥dAt′∥)/(∥dAS′ _(j)∥−∥dAt′∥))(π/2)]and δ_(e)=δ_(eA)=∥AI∥/∥dAI∥ and δ_(eR)−1 if∥dAa∥≦∥dAS_(j)≦∥dAt∥ where t′ is the intersection of dAS_(j) with anintermediate base t between a smaller base a and a larger base b of thezone.
 8. A method according to any one of claims 1 to 7, wherein, whenthe mesh node (SC) is situated in a plurality of intersecting zones ofinfluence (ZN₁, ZN₂, ZN₃) of muscles (A₁I₁, A₂I₂, A₃I₃), the mesh node(S_(i)) is displaced by a displacement vector (δS_(i)) determined byadding displacement vectors resulting from the action of said muscles inorder to obtain a resultant vector and then truncating the resultantvector so that the resultant vector has a modulus equal to the highestmodulus of the muscle displacement vectors.
 9. A method according to anyone of claims 1 to 8, wherein there is constituted a group (G3; G4) ofmodelled frontal muscles (M10G, M11G, M12G, M15G, M10D, M11D, M12D,M15D) respectively extending downward substantially as far as theexternal, middle and internal extremities of the eyebrows (SG; SD) andto the middles of the eyelids (PAG, PAD), and having zones of influenceintersecting at least two by two to displace mesh nodes at least in theeyebrows and the eyelids.
 10. A method according to any one of claims 1to 9, including a step (E5) of determining parameters for animating atleast one of the following organs: an eye (BOG, BOD), an eyelid (PAG,PAD), a lower jaw (MA), a neck (CO).
 11. A method according to any oneof claims 1 to 10, including a step (E51) of determining a rotationcenter (RO) of an eye as the middle of a segment whose extremities aretwo farthest apart mesh nodes in a set of meshes relating to the whiteof the-eye (BOD).
 12. A method according to any one of claims 1 to 11,including a step (E52) of determining a rotation axis (APA) of an eyelidpassing through two farthest apart mesh nodes in a set of meshes (PAD)relating to said eyelid.
 13. A method according to any one of claims 1to 12, including the steps of: determining (E53) mesh nodes as jaw pivotaxis nodes (S_(pg), S_(pd)), a chin node (S_(me)) and a head-necktransition node (S_(CO)) to define a jaw articulation angle AM,determining (E54) a predetermined angular sector α_(M) less than thearticulation sector AM contained in the latter and having a lower side(S_(pd), S_(CO)) common therewith, and marking (E55) mesh nodessubstantially contained within the angular articulation sector AM, inorder for a rotation of the jaw (MA) to operate completely on mesh nodessituated within an angular sector AM−α_(M) and in an attenuated manneron mesh nodes within the angular sector α_(M) so that, if the angulardistance α_(i) between a mesh node and the common lower side (S_(pd),S_(CO)) decreases, the mesh node is displaced as a function of anattenuation coefficient defined as follows:$1 - {{\cos \left( {\frac{\alpha_{i}}{\alpha_{M}}\frac{\pi}{2}} \right)}.}$


14. A method according to any one of claims 1 to 13, including the stepsof: determining (E56) upper and lower anterior nodes (S_(sup1),S_(inf1)) and upper and lower posterior nodes (S_(sup2), S_(inf2)) ofthe neck (CO); marking (E57) mesh nodes substantially contained betweenlateral planes passing through the upper and lower nodes (S_(sup1),S_(sup2), S_(inf1), S_(inf2)) as belonging to the neck; marking (E58)all the mesh nodes in the head that do not belong to the neck;determining (E59) a center of rotation (CRT) of the head consisting ofthe center of the volume encompassing the mesh nodes belonging to theneck; and determining (E60) minimum and maximum ordinates Y_(min) andY_(max) of the upper and lower nodes of the neck, in order for asubsequent rotation of the neck (TE) to operate completely on mesh nodessituated above the lateral plane passing through the upper nodes(S_(sup1), S_(sup2)) and in an attenuated fashion on mesh nodes withinthe neck (CO) so that the closer the mesh node (S_(i)) with the ordinateY_(Si) to the lateral plane passing through the lower nodes (S_(inf1),S_(inf2)), the greater the angular displacement of the mesh nodedecreases as a function of a ratio defined as follows:Input  Workspace  TL4Date:08/28/2003  Number:10258879  Folder:06


15. A client-server system, characterized in that the client (CLa)includes a data processing means (MAa) having acquired a head (TE)imaged in three dimensions in the form of sets of meshes (EM) andparameters (P) by the method according to any one of claims 1 to 14, foranimating the head as a function of animation commands (CA), and theserver (SE2 a) is a processing server for converting responses (RP) readin a database (BS) addressed by requests (RQ) corresponding to messages(QR/CL) transmitted by the client (CLa) into messages (QR/SE) andanimation commands (CA) transmitted to the client (CLa).
 16. Aclient-server system, characterized in that the server (SE3) is adatabase server and the client (CLb) includes a data processing means(MAb) having acquired a head (TE) imaged in three dimensions in the formof sets of meshes (EM) and parameters (P) by the method according to anyone of claims 1 to 14, for animating the head as a function of animationcommands (CA), and further includes conversational means (MC) forconverting responses (RP) read in the database server (SE3) addressed byrequests (RQ) corresponding to messages (QR/CL) provided in the clientinto messages (QR/SE) applied in the client and animation commands (CA)transmitted to the data processing means (MAb).
 17. A client-serversystem according to claim 15 or 16, wherein the sets of meshes (EM) andthe parameters (P) are selected and acquired from a predetermined server(SE1).
 18. A client-server system according to any one of claims 15 to17, wherein the sets of meshes and the parameters are all or some of thefollowing: sets of meshes (EM) modelling the head (TE) in threedimensions; parameters (P) necessary for defining animations inparticular of the jaw (S_(pd)(S_(pg)), S_(me), S_(CO), α_(M)), the neck(S_(inf1), S_(inf2), S_(sup1), S_(sup2)) and of muscles (A, I, T, B, α).19. A client-server system according to any of claims 15 to 18, whereinthe animation commands (CA) relate to some or all of the followingfacial animations: turning the head (TE), turning an eye (BOD, BOG),turning an eyelid (PAD, PAG), enunciating a text, enunciating a sound,choosing a neutral expression of the face of the head, portraying anemotion.